﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;//文件操作的命名空间

namespace A56File类操作文件
{
    class Program
    {
        //判断文件是否存在 和 读写文本文件
        static void Main1(string[] args)
        {
            string path = @"D:\a.txt";
            if (!File.Exists(path))//如果D:\a.txt不存在就创建一个文件并写入"春眠不觉晓,处处闻啼鸟"
            {
                File.WriteAllText(path,"春眠不觉晓,处处闻啼鸟");//如果有同名文件会覆盖
                Console.WriteLine("ok");
            }
            else//文件存在就读取文件内容输出到控制台
            {
                string str= File.ReadAllText(path);
                Console.WriteLine(str);
            }
        }
        //追加写入文本   
        static void Main2(string[] args)
        {
            string path = @"D:\b.txt";
            while (true) //把用户没输入一行就追加到文件中
            {
                string input = Console.ReadLine();//读取用户输入
                if (input == "Exit()") break;//判断是否要退出
                File.AppendAllText(path,input+"\n");//追加用户输入的文本
            }
        }
        //读取所有行(得到字符串数组)  和 写入所有行(写入字符串数组)  删除
        static void Main3(string[] args)
        {
            string path = @"D:\b.txt";
            string[] arr=  File.ReadAllLines(path);

            string[] arr1 = {"public","private","protected","internal","protected internal" };
            File.WriteAllLines(path,arr1);

            File.Delete(path);//删除文件
        }
        //读取和写入字节
        static void Main(string[] args)
        {
            string path = @"D:\name.txt";
            File.WriteAllText(path,"李睿",Encoding.GetEncoding("GB2312")); //默认Utf8编码
          //读取所有字节
            byte[] arr= File.ReadAllBytes(path);

           //  for (int i = 0; i < arr.Length; i++)
           //  {
           //      Console.WriteLine(Convert.ToString(  arr[i],2));
           //  }
           // string name=  Encoding.GetEncoding("GB2312").GetString(arr);//解码
           // Console.WriteLine(name);

            //写入所有字节
            File.WriteAllBytes(@"D:\name1.txt",arr);


                
        }
    }
}
